Imports System.Data.SqlClient
Imports System.ComponentModel
''' <nombre>
''' Centro de costo
''' </nombre>
Public Class cls_centrocostoorden_

    Implements ICloneable

#Region "Variables ..."
    Private int_idcentrocostoorden As Integer = 0
    Private int_tipo As enu_tipo = 0
    Private int_tipoobra As enu_tipoobra = 0
    Private str_nombrecorto As String = ""
    Private str_codigo As String = ""
    Private str_observaciones As String = ""
    Private int_idpersonal As Integer = 0
    Private int_idregistro As Integer = 0
    Private int_idcliente As Integer = 0
    Private dpt_fechainicio As DateTime = New System.DateTime(Now.Year, 1, 1)
    Private dpt_fechafin As DateTime = New System.DateTime(Now.Year, 1, 1)
    Private int_estado As enu_estado = enu_estado.activo
    Private dtp_fechaestado As DateTime = New System.DateTime(Now.Year, 1, 1)
    Private str_motivoestado As String = ""

    Private obj_registro As cls_registro_ = Nothing
    Private obj_personal As cls_personal_ = Nothing
    Private obj_cliente As cls_cliente_ = Nothing

    Private col_Items As Collections.Generic.List(Of cls_centrocostoorden_) = Nothing


    Public Enum enu_tipo
        <Description("Centro de costo.")> centrocosto = 0
        <Description("Obra.")> obra = 1
    End Enum

    Public Enum enu_tipoobra
        <Description("OBM")> obm = 0
        <Description("OBS")> obs = 1
        <Description("OBT")> obt = 2
    End Enum

    Public Enum enu_estado As Integer
        <Description("Activo")> activo = 0
        <Description("Desactivo")> desactivo = 1
    End Enum

#End Region

    Public Overrides Function ToString() As String
        Return codigo 'EnumDescription(tipo) & " - " & codigo
    End Function

#Region "Propiedades ..."
    ReadOnly Property This
        Get
            Return Me
        End Get
    End Property
    ReadOnly Property ThisDescripcion As String
        Get
            Return Me.ToString
        End Get
    End Property
    ReadOnly Property pKey
        Get
            Return idcentrocostoorden
        End Get
    End Property
    ''' <id>
    ''' True
    ''' </id>
    Property idcentrocostoorden() As Integer
        Get
            idcentrocostoorden = int_idcentrocostoorden
        End Get
        Set(ByVal value As Integer)
            int_idcentrocostoorden = value
        End Set
    End Property
    Property tipo() As enu_tipo
        Get
            tipo = int_tipo
        End Get
        Set(ByVal value As enu_tipo)
            int_tipo = value
        End Set
    End Property
    Property tipoobra() As enu_tipoobra
        Get
            tipoobra = int_tipoobra
        End Get
        Set(ByVal value As enu_tipoobra)
            int_tipoobra = value
        End Set
    End Property
    Property nombrecorto() As String
        Get
            nombrecorto = str_nombrecorto
        End Get
        Set(ByVal value As String)
            str_nombrecorto = value
        End Set
    End Property
    Property codigo() As String
        Get
            codigo = str_codigo
        End Get
        Set(ByVal value As String)
            str_codigo = value
        End Set
    End Property
    Property observaciones() As String
        Get
            observaciones = str_observaciones
        End Get
        Set(ByVal value As String)
            str_observaciones = value
        End Set
    End Property
    Property idpersonal() As Integer
        Get
            idpersonal = int_idpersonal
        End Get
        Set(ByVal value As Integer)
            int_idpersonal = value
        End Set
    End Property
    Property idregistro() As Integer
        Get
            idregistro = int_idregistro
        End Get
        Set(ByVal value As Integer)
            int_idregistro = value
        End Set
    End Property
    Property idcliente() As Integer
        Get
            idcliente = int_idcliente
        End Get
        Set(ByVal value As Integer)
            int_idcliente = value
        End Set
    End Property
    Property fechainicio As DateTime
        Get
            fechainicio = dpt_fechainicio
        End Get
        Set(ByVal value As DateTime)
            dpt_fechainicio = value
        End Set
    End Property
    Property fechafin As DateTime
        Get
            fechafin = dpt_fechafin
        End Get
        Set(ByVal value As DateTime)
            dpt_fechafin = value
        End Set
    End Property
    Property estado As enu_estado
        Get
            estado = int_estado
        End Get
        Set(ByVal value As enu_estado)
            int_estado = value
        End Set
    End Property
    Property fechaestado As DateTime
        Get
            fechaestado = dtp_fechaestado
        End Get
        Set(ByVal value As DateTime)
            dtp_fechaestado = value
        End Set
    End Property
    Property motivoestado As String
        Get
            motivoestado = str_motivoestado
        End Get
        Set(ByVal value As String)
            str_motivoestado = value
        End Set
    End Property
    Property registro() As cls_registro_
        Get
            If IsNothing(obj_registro) Then
                obj_registro = New cls_registro_
                If Not obj_registro.Buscar(idregistro) Then
                    obj_registro = Nothing
                End If
            End If
            registro = obj_registro
        End Get
        Set(ByVal value As cls_registro_)
            obj_registro = value
        End Set
    End Property
    Property personal() As cls_personal_
        Get
            If IsNothing(obj_personal) Then
                obj_personal = New cls_personal_
                If Not obj_personal.Buscar(idpersonal) Then
                    obj_personal = Nothing
                End If
            End If
            personal = obj_personal
        End Get
        Set(ByVal value As cls_personal_)
            obj_personal = value
        End Set
    End Property
    Property cliente() As cls_cliente_
        Get
            If IsNothing(obj_cliente) Then
                obj_cliente = New cls_cliente_
                If Not obj_cliente.Buscar(idcliente) Then
                    obj_cliente = Nothing
                End If
            End If
            cliente = obj_cliente
        End Get
        Set(ByVal value As cls_cliente_)
            obj_cliente = value
        End Set
    End Property
    Property Items() As Collections.Generic.List(Of cls_centrocostoorden_)
        Get
            Items = col_Items
        End Get
        Set(ByVal value As Collections.Generic.List(Of cls_centrocostoorden_))
            col_Items = value
        End Set
    End Property
#End Region

    Private Sub CargarColeccion(ByVal obj_Reader As SqlDataReader)
        col_Items = New Collections.Generic.List(Of cls_centrocostoorden_)
        While obj_Reader.Read()
            Dim Elemento As New cls_centrocostoorden_
            Elemento.int_idcentrocostoorden = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idcentrocostoorden")))

            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("tipo"))) = False Then
                Elemento.int_tipo = (obj_Reader.GetValue(obj_Reader.GetOrdinal("tipo")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("tipoobra"))) = False Then
                Elemento.int_tipoobra = (obj_Reader.GetValue(obj_Reader.GetOrdinal("tipoobra")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("nombrecorto"))) = False Then
                Elemento.str_nombrecorto = (obj_Reader.GetValue(obj_Reader.GetOrdinal("nombrecorto")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("codigo"))) = False Then
                Elemento.str_codigo = (obj_Reader.GetValue(obj_Reader.GetOrdinal("codigo")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("observaciones"))) = False Then
                Elemento.str_observaciones = (obj_Reader.GetValue(obj_Reader.GetOrdinal("observaciones")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("idpersonal"))) = False Then
                Elemento.int_idpersonal = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idpersonal")))
            End If

            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("idcliente"))) = False Then
                Elemento.int_idcliente = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idcliente")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechainicio"))) = False Then
                Elemento.dpt_fechainicio = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechainicio")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechafin"))) = False Then
                Elemento.dpt_fechafin = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechafin")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("estado"))) = False Then
                Elemento.int_estado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("estado")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechaestado"))) = False Then
                Elemento.dtp_fechaestado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechaestado")))
            End If
            If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("motivoestado"))) = False Then
                Elemento.str_motivoestado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("motivoestado")))
            End If
            col_Items.Add(Elemento)
        End While
    End Sub

    Private Sub CargarVariables(ByVal obj_Reader As SqlDataReader)
        obj_Reader.Read()
        int_idcentrocostoorden = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idcentrocostoorden")))

        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("tipo"))) = False Then
            int_tipo = (obj_Reader.GetValue(obj_Reader.GetOrdinal("tipo")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("tipoobra"))) = False Then
            int_tipoobra = (obj_Reader.GetValue(obj_Reader.GetOrdinal("tipoobra")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("nombrecorto"))) = False Then
            str_nombrecorto = (obj_Reader.GetValue(obj_Reader.GetOrdinal("nombrecorto")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("codigo"))) = False Then
            str_codigo = (obj_Reader.GetValue(obj_Reader.GetOrdinal("codigo")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("observaciones"))) = False Then
            str_observaciones = (obj_Reader.GetValue(obj_Reader.GetOrdinal("observaciones")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("idpersonal"))) = False Then
            int_idpersonal = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idpersonal")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("idregistro"))) = False Then
            int_idregistro = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idregistro")))
        End If

        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("idcliente"))) = False Then
            int_idcliente = (obj_Reader.GetValue(obj_Reader.GetOrdinal("idcliente")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechainicio"))) = False Then
            dpt_fechainicio = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechainicio")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechafin"))) = False Then
            dpt_fechafin = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechafin")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("estado"))) = False Then
            int_estado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("estado")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("fechaestado"))) = False Then
            dtp_fechaestado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("fechaestado")))
        End If
        If IsDBNull(obj_Reader.GetValue(obj_Reader.GetOrdinal("motivoestado"))) = False Then
            str_motivoestado = (obj_Reader.GetValue(obj_Reader.GetOrdinal("motivoestado")))
        End If
    End Sub

    Public Sub Nuevo(Optional ByVal ObtenerID As Boolean = False)
        Dim obj_Conexion As New cls_Conexion
        Try

            'Creacion de registro----------------------------------------------------
            If IsNothing(obj_registro) Then
                registro = New cls_registro_
                registro.fechacreado = Now
                registro.idusuariocreado = UsuarioLOG.idusuario
                registro.fechamodificado = Now
                registro.idusuariomodificado = UsuarioLOG.idusuario
                registro.idregistroestado = 1
                registro.idusuarioregistroestado = UsuarioLOG.idusuario
                registro.Nuevo(True)
                idregistro = obj_registro.idregistro
            End If
            '------------------------------------------------------------------------


            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__Nuevo"
                .Parameters.Add("@tipo", SqlDbType.Int).Value = int_tipo
                .Parameters.Add("@tipoobra", SqlDbType.Int).Value = int_tipoobra
                .Parameters.Add("@nombrecorto", SqlDbType.NVarChar).Value = str_nombrecorto
                .Parameters.Add("@codigo", SqlDbType.NChar).Value = str_codigo
                .Parameters.Add("@observaciones", SqlDbType.NVarChar).Value = str_observaciones
                .Parameters.Add("@idpersonal", SqlDbType.Int).Value = int_idpersonal
                .Parameters.Add("@idregistro", SqlDbType.Int).Value = int_idregistro
                .Parameters.Add("@idcliente", SqlDbType.Int).Value = int_idcliente
                .Parameters.Add("@fechainicio", SqlDbType.DateTime).Value = dpt_fechainicio
                .Parameters.Add("@fechafin", SqlDbType.DateTime).Value = dpt_fechafin
                .Parameters.Add("@estado", SqlDbType.Int).Value = int_estado
                .Parameters.Add("@fechaestado", SqlDbType.DateTime).Value = dtp_fechaestado
                .Parameters.Add("@motivoestado", SqlDbType.NVarChar).Value = str_motivoestado

                .ExecuteNonQuery()
            End With
            If ObtenerID Then
                CargarUltimo()
            End If
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al Crear el registro de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
        End Try
    End Sub

    Public Sub Modificar()
        Dim obj_Conexion As New cls_Conexion
        Try
            'Modificacion de registro------------------------------------------------
            registro.fechamodificado = Now : registro.idusuariomodificado = UsuarioLOG.idusuario
            registro.Modificar()
            '------------------------------------------------------------------------

            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__Modificar"
                .Parameters.Add("@idcentrocostoorden", SqlDbType.Int).Value = int_idcentrocostoorden
                .Parameters.Add("@tipo", SqlDbType.Int).Value = int_tipo
                .Parameters.Add("@tipoobra", SqlDbType.Int).Value = int_tipoobra
                .Parameters.Add("@nombrecorto", SqlDbType.NVarChar).Value = str_nombrecorto
                .Parameters.Add("@codigo", SqlDbType.NChar).Value = str_codigo
                .Parameters.Add("@observaciones", SqlDbType.NVarChar).Value = str_observaciones
                .Parameters.Add("@idpersonal", SqlDbType.Int).Value = int_idpersonal
                .Parameters.Add("@idregistro", SqlDbType.Int).Value = int_idregistro
                .Parameters.Add("@idcliente", SqlDbType.Int).Value = int_idcliente
                .Parameters.Add("@fechainicio", SqlDbType.DateTime).Value = dpt_fechainicio
                .Parameters.Add("@fechafin", SqlDbType.DateTime).Value = dpt_fechafin
                .Parameters.Add("@estado", SqlDbType.Int).Value = int_estado
                .Parameters.Add("@fechaestado", SqlDbType.DateTime).Value = dtp_fechaestado
                .Parameters.Add("@motivoestado", SqlDbType.NVarChar).Value = str_motivoestado
                .ExecuteNonQuery()
            End With
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al Modificar el registro de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
        End Try
    End Sub

    Public Sub Eliminar(ByVal idcentrocostoorden As Integer)
        Dim obj_Conexion As New cls_Conexion
        Try
            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__Eliminar"
                .Parameters.Add("@idcentrocostoorden", SqlDbType.Int).Value = idcentrocostoorden
                .ExecuteNonQuery()
            End With
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al Eliminar el registro de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
        End Try
    End Sub

    Public Function Buscar(ByVal idcentrocostoorden As Integer) As Boolean
        Dim obj_Conexion As New cls_Conexion
        Dim obj_Reader As SqlDataReader
        Try
            Buscar = False
            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__Buscar"
                .Parameters.Add("@idcentrocostoorden", SqlDbType.Int).Value = idcentrocostoorden
            End With
            obj_Reader = obj_Conexion.obj_SqlCommand.ExecuteReader
            If obj_Reader.HasRows Then
                CargarVariables(obj_Reader)
                Buscar = True
            End If
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al Buscar el registro de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
            obj_Reader = Nothing
        End Try
    End Function

    Public Sub CargarUltimo()
        Dim obj_Conexion As New cls_Conexion
        Dim obj_Reader As SqlDataReader
        Try
            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__CargarUltimo"
            End With
            obj_Reader = obj_Conexion.obj_SqlCommand.ExecuteReader
            If obj_Reader.HasRows Then
                CargarVariables(obj_Reader)
            End If
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al CargarUltimo registro de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
            obj_Reader = Nothing
        End Try
    End Sub

    Public Function CargarTodos(Optional ByVal idregistroestado As Integer = 1) As Boolean
        Dim obj_Conexion As New cls_Conexion
        Dim obj_Reader As SqlDataReader
        Try
            CargarTodos = False
            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__CargarTodos"
                .Parameters.Add("@idregistroestado", SqlDbType.Int).Value = idregistroestado
            End With
            obj_Reader = obj_Conexion.obj_SqlCommand.ExecuteReader
            If obj_Reader.HasRows Then
                CargarColeccion(obj_Reader)
                CargarTodos = True
            End If
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al CargarTodos los registros de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
            obj_Reader = Nothing
        End Try
    End Function

    Public Function CargarXtipo(ByVal prm_tipo As enu_tipo) As Boolean
        Dim obj_Conexion As New cls_Conexion
        Dim obj_Reader As SqlDataReader
        Try
            CargarXtipo = False
            obj_Conexion.Conectar()
            With obj_Conexion.obj_SqlCommand
                .CommandType = CommandType.StoredProcedure
                .Connection = obj_Conexion.obj_SqlConnection
                .CommandText = "centrocostoorden__CargarXtipo"
                .Parameters.Add("@tipo", SqlDbType.Int).Value = prm_tipo
            End With
            obj_Reader = obj_Conexion.obj_SqlCommand.ExecuteReader
            If obj_Reader.HasRows Then
                CargarColeccion(obj_Reader)
                CargarXtipo = True
            End If
        Catch ex As SqlClient.SqlException
            MessageBox.Show("Error al CargarXtipo los registros de centrocostoorden_." & Chr(13) & _
            "Por favor informe del siguiente detalle técnico:" & Chr(13) & _
            "Nro de error: " & ex.ErrorCode & "." & Chr(13) & _
            "Descripción: " & ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            obj_Conexion.Desconectar()
            obj_Conexion = Nothing
            obj_Reader = Nothing
        End Try
    End Function

    Public Function Clone() As Object Implements System.ICloneable.Clone
        Dim obj_centrocostoorden_Clon As New cls_centrocostoorden_
        obj_centrocostoorden_Clon.int_idcentrocostoorden = Me.int_idcentrocostoorden
        obj_centrocostoorden_Clon.int_tipo = Me.int_tipo
        obj_centrocostoorden_Clon.int_tipoobra = Me.int_tipoobra
        obj_centrocostoorden_Clon.str_nombrecorto = Me.str_nombrecorto
        obj_centrocostoorden_Clon.str_codigo = Me.str_codigo
        obj_centrocostoorden_Clon.str_observaciones = Me.str_observaciones
        obj_centrocostoorden_Clon.int_idpersonal = Me.int_idpersonal
        obj_centrocostoorden_Clon.int_idregistro = Me.int_idregistro
        obj_centrocostoorden_Clon.col_Items = Me.col_Items
        Return obj_centrocostoorden_Clon
    End Function

End Class

